1. The Field of the Invention
The present invention general relates to electronic messaging systems. More specifically, the present invention provides for automatically identifying a forest corresponding to a particular recipient, in a network that includes multiple forests, without the use of a common directory that maps recipients to forests.
2. Background and Related Art
Although computers were once isolated and had minimal or little interaction with other computers, computers today interact with a wide verity of other computers through Local Area Networks (LANs), Wide Area Networks (WANs), dial-up connections, and so forth. With the wide-spread growth of the Internet, connectivity between computers is becoming more important and has opened up many new applications and technologies. The growth of large-scale networks and the wide spread availability of low-cost personal computers has fundamentally changed the way that many people work, interact, communicate, and play.
Electronic communications among users of various computer systems have been known for many years. Many companies have developed internal electronic messaging systems that allow email communications between various computers connected to corporate LANs and/or other networks. Many companies have reengineered the processes and procedures to take maximum advantage of email communications in order to provide a convenient mechanism for exchanging information and documents, thus reducing the handling of paperwork and speeding the flow of information between and among employees of various departments. Traditionally, however, large-scale networks connecting various divisions over vast distances were extremely expensive. In addition, the large-scaled networks which did exist generally used proprietary protocols, which were difficult to interconnect with other networks.
With the growth and development of the Internet, however, the situation has changed dramatically. Today, a company may install a corporate LAN at sites separated by large geographic distances and “back bone” communications between sites over the Internet. In many ways, the Internet has become a standard with which any viable network must interact.
When sending a message, a client communicates with a message or mail server telling the server such information as the address of the sender, address of the recipient, as well as the body of the message. The message server then takes the “to” address, i.e., the recipient address, and identifies a domain name associated therewith. The sender's mail server then communicates with a Domain Name Server (DNS) for identifying the IP address for the recipient's server. The sender's server then use the one or more IP addresses received along with a standard protocol, e.g., Simple Mail Transfer Protocol (SMTP), for establishing a connection between the two servers for communicating the electronic message.
Within a single network or organization there may be several domain names, which are arranged in a domain hierarchy. For instance, a group of domain names that have the same DNS, e.g., company.com (the parent domain), sales.company.com, and support.company.com (the child domains) are referred to as a tree. A forest is a set of domain trees that do not form a contiguous name space. All trees in a forest share a common schema, configuration, and global catalog.
A single organization or network may include a multitude of forests, each of which supports numerous recipients. Such is typically the case when companies merge, e.g., one company buys out the other. Each company has its own message forests, and then when the companies merge, they subsequently create a common messaging service. For example, company A with forest A.com merges with company B with forest B.com, and subsequently form company AB with domain AB.com, which includes both forests A.com and B.com.
In order to appropriately direct and identify a forest that corresponds to a particular recipient, typically a manual mapping or table generation is done for the multiple forests. Creating such unified or common directories, however, can be extremely tedious and costly. For instance, when companies merge and combine messaging systems with multiple forests that support hundreds of thousands of employees or recipients, the manual process to map a particular recipient to particular forest can take years to accomplish and is subject to human error.
In order to resolve the problems associated with creating a unified directory that maps recipients to a particular forest, recent developments have reconfigured systems in order to circulate messages throughout each forests. For example, as shown in FIG. 1, a network 100 has multiple forests 110, 115, 120, which are configured in loop fashion. A message 105 is placed within the transport loop, wherein each forest can determine if one or more recipients associated with the message 105 reside within that particular forest. For instance, first forest 110 may receive message 105 and evaluate the contents to determine if it is destined for a recipient within its forest. If the first forest 110 does not recognize one or more recipient address associated with the message 105, the message 105 can be forwarded to second forest 115. Similarly, the second forest 115 will also evaluate the contents of the message 105, wherein if the second forest 115 does not identify all of the recipient addresses within message 105, the message 105 is then passed to third forest 120. This process is repeated until any particular forest within the network 100 takes full responsibility for message 105, or the message 105 is timed out.
Although such loop configuration solves the problems associated with creating unified directories for routing messages among multiple forests, there are several drawbacks associated with such system. For example, if a message enters the network, but is not fully accepted by any one forest, the message has the potential of looping many times before exceeding its hop count. Further, if there are a multitude of these messages looping in the system at anyone time, bandwidth problems may arise that slow the overall system. In addition, there exits several security issues, such as the potential for a forest to accept messages erroneously or maliciously.